package com.hywood.app.live.dao;

import com.hywood.app.live.model.Channel;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface LiveDao {
    /**
     * 拉取列表，请使用分页插件查询
     *
     * @return list
     */
    @Select("SELECT * FROM l_channel WHERE `status`=0 AND `online_status`=1")
    List<Channel> listChannel();

    /**
     * 根据guid获取单个频道信息
     *
     * @param guid 频道guid
     * @return 频道信息
     */
    @Select("SELECT * FROM l_channel WHERE live_guid = #{guid}")
    Channel getChannelByGuid(String guid);

    /**
     * 根据guid获取单个频道信息
     *
     * @param channelId 频道guid
     * @return 频道信息
     */
    @Select("SELECT * FROM l_channel WHERE channel_id = #{channelId} LIMIT 1")
    Channel getChannelByChannelId(String channelId);

    /**
     * 关闭推流
     *
     * @param guid guid
     */
    @Update("UPDATE l_channel SET `live_status`=5 WHERE live_guid = #{guid}")
    void closeByGuid(String guid);

    /**
     * 更新频道直播状态
     *
     * @param guid guid
     */
    @Update("UPDATE l_channel SET `live_status`=#{status} WHERE live_guid = #{guid}")
    void updateChannelStatus(@Param("guid") String guid, @Param("status") Integer Status);


}
